package com.hsjk.szwj.module.smedia.controller.admin.template.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;

/**
 * @desc 获取模板列表 ReqVO
 * @Date 2023/07/21 00:06
 **/
@Data
public class TemplatesReqVO {
    @Schema(description = "当前页码", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @NotNull(message = "页码不能为空")
    @Min(value = 1, message = "页码最小值为 1")
    private Long pageNo;

    @Schema(description = "分页大小", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
    @NotNull(message = "每页条数不能为空")
    @Min(value = 20, message = "每页条数最小值为 20")
    @Max(value = 100, message = "每页条数最大值为 100")
    private Long pageSize;

    @Schema(description = "模板类型", example = "Timeline")
    private String type;

    @Schema(description = "模板状态", example = "Available")
    private String status;

    @Schema(description = "创建来源", example = "OpenAPI")
    private String createSource;

    @Schema(description = "搜索关键词，可以根据模板ID和title搜索", example = "")
    private String keyword;

    @Schema(description = "排序参数，默认根据创建时间倒序", example = "CreationTime:Desc")
    private String sortType;
}
